'use strict';

const Service = require('egg').Service;

class ArticleViewService extends Service {

  // 新增用户查看记录
  async createUserView(id) {
    const { app, ctx } = this;
    // 判断用户是否登录 登录了才做操作
    if (ctx.state.user) {
      console.log(`=======>用户:${ctx.state.user.nickname} 查看了id为:“${id}”的文章`);
      const user_id = ctx.state.user.id;
      const isData = await app.model.ArticleView.findOne({ where: { user_id, article_id: id } });
      // 如果用户之前查看过这篇文章，就让number查看次数+1
      if (isData) {
        await isData.increment('number');
        return await isData.reload();
      }
      // 创建一条用户搜索记录
      const isCreate = await app.model.ArticleView.create({ user_id, article_id: id });
      isCreate ? console.log('=======>新增用户查看记录成功') : ('=======>新增用户查看记录失败');
      return isCreate ? isCreate : false;
    }
  }


}

module.exports = ArticleViewService;
